﻿using System;
using System.Text;
using System.Collections.Generic;
using System.Linq;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System.IO;
using System.Xml.Serialization;

namespace FourPartHarmonyTestProject
{
    /// <summary>
    /// 和声 理論と実習I巻の課題
    /// </summary>
    [TestClass]
    public class UnitTest1
    {
        static Tester tester;

        string pathWaseiRironToJissyuu1 = "C:/work/和声理論と実習I/";

        private int Test断片的連結(string path) {
            return tester.Test断片的連結(pathWaseiRironToJissyuu1 + path);
        }
        private int Test課題の実施(string path) {
            return tester.Test課題の実施(pathWaseiRironToJissyuu1 + path);
        }

        public UnitTest1() {

            //
            // TODO: コンストラクタ ロジックをここに追加します
            //
        }

        [ClassInitialize()]
        public static void MyClassInitialize(TestContext testContext) {
            tester = Tester.Instance;
            tester.IncRef();
        }

        [ClassCleanup()]
        public static void MyClassCleanup() {
            tester.DecRef();
        }

        private TestContext testContextInstance;

        /// <summary>
        ///現在のテストの実行についての情報および機能を
        ///提供するテスト コンテキストを取得または設定します。
        ///</summary>
        public TestContext TestContext {
            get {
                return testContextInstance;
            }
            set {
                testContextInstance = value;
            }
        }

        #region 追加のテスト属性
        //
        // テストを作成する際には、次の追加属性を使用できます:
        //
        // クラス内で最初のテストを実行する前に、ClassInitialize を使用してコードを実行してください
        // [ClassInitialize()]
        // public static void MyClassInitialize(TestContext testContext) { }
        //
        // クラス内のテストをすべて実行したら、ClassCleanup を使用してコードを実行してください
        // [ClassCleanup()]
        // public static void MyClassCleanup() { }
        //
        // 各テストを実行する前に、TestInitialize を使用してコードを実行してください
        // [TestInitialize()]
        // public void MyTestInitialize() { }
        //
        // 各テストを実行した後に、TestCleanup を使用してコードを実行してください
        // [TestCleanup()]
        // public void MyTestCleanup() { }
        //
        #endregion

        #region  I巻 課題9
        [TestMethod] public void I巻課題0901() { Assert.AreEqual(0, Test課題の実施("Ik09-1.fph")); }
        [TestMethod] public void I巻課題0902() { Assert.AreEqual(0, Test課題の実施("Ik09-2.fph")); }
        [TestMethod] public void I巻課題0903() { Assert.AreEqual(0, Test課題の実施("Ik09-3.fph")); }
        [TestMethod] public void I巻課題0904() { Assert.AreEqual(0, Test課題の実施("Ik09-4.fph")); }
        [TestMethod] public void I巻課題0905() { Assert.AreEqual(0, Test課題の実施("Ik09-5.fph")); }
        #endregion

        #region I巻 課題10
        [TestMethod] public void I巻課題1001() { Assert.AreEqual(0, Test課題の実施("Ik10-1.fph")); }
        [TestMethod] public void I巻課題1002() { Assert.AreEqual(0, Test課題の実施("Ik10-2.fph")); }
        [TestMethod] public void I巻課題1003() { Assert.AreEqual(0, Test課題の実施("Ik10-3.fph")); }
        [TestMethod] public void I巻課題1004() { Assert.AreEqual(0, Test課題の実施("Ik10-4.fph")); }
        [TestMethod] public void I巻課題1005() { Assert.AreEqual(0, Test課題の実施("Ik10-5.fph")); }
        [TestMethod] public void I巻課題1006() { Assert.AreEqual(0, Test課題の実施("Ik10-6.fph")); }
        #endregion

        #region I巻 課題11

        [TestMethod] public void I巻課題1101() { Assert.AreEqual(0, Test課題の実施("Ik11-1.fph")); }
        [TestMethod] public void I巻課題1102() { Assert.AreEqual(1, Test課題の実施("Ik11-2.fph")); }
        [TestMethod] public void I巻課題1103() { Assert.AreEqual(0, Test課題の実施("Ik11-3.fph")); }
        #endregion

        #region I巻 課題12
        [TestMethod] public void I巻課題1201() { Assert.AreEqual(0, Test課題の実施("Ik12-1.fph")); }
        [TestMethod] public void I巻課題1202() { Assert.AreEqual(0, Test課題の実施("Ik12-2.fph")); }
        [TestMethod] public void I巻課題1203() { Assert.AreEqual(0, Test課題の実施("Ik12-3.fph")); }
        [TestMethod] public void I巻課題1204() { Assert.AreEqual(0, Test課題の実施("Ik12-4.fph")); }
        [TestMethod] public void I巻課題1205() { Assert.AreEqual(0, Test課題の実施("Ik12-5.fph")); }
        [TestMethod] public void I巻課題1206() { Assert.AreEqual(0, Test課題の実施("Ik12-6.fph")); }
        #endregion

        #region I巻 課題19
        [TestMethod] public void I巻課題1901() { Assert.AreEqual(0, Test課題の実施("Ik19-01.fph")); }
        [TestMethod] public void I巻課題1902() { Assert.AreEqual(0, Test課題の実施("Ik19-02.fph")); }
        [TestMethod] public void I巻課題1903() { Assert.AreEqual(0, Test課題の実施("Ik19-03.fph")); }
        [TestMethod] public void I巻課題1904() { Assert.AreEqual(0, Test課題の実施("Ik19-04.fph")); }
        [TestMethod] public void I巻課題1905() { Assert.AreEqual(0, Test課題の実施("Ik19-05.fph")); }
        [TestMethod] public void I巻課題1906() { Assert.AreEqual(0, Test課題の実施("Ik19-06.fph")); }
        [TestMethod] public void I巻課題1907() { Assert.AreEqual(0, Test課題の実施("Ik19-07.fph")); }
        [TestMethod] public void I巻課題1908() { Assert.AreEqual(0, Test課題の実施("Ik19-08.fph")); }
        [TestMethod] public void I巻課題1909() { Assert.AreEqual(0, Test課題の実施("Ik19-09.fph")); }
        [TestMethod] public void I巻課題1910() { Assert.AreEqual(0, Test課題の実施("Ik19-10.fph")); }
        [TestMethod] public void I巻課題1911() { Assert.AreEqual(0, Test課題の実施("Ik19-11.fph")); }
        [TestMethod] public void I巻課題1912() { Assert.AreEqual(0, Test課題の実施("Ik19-12.fph")); }
        #endregion

        #region I巻 課題24
        [TestMethod] public void I巻課題2401() { Assert.AreEqual(0, Test課題の実施("Ik24-01.fph")); }
        [TestMethod] public void I巻課題2402() { Assert.AreEqual(0, Test課題の実施("Ik24-02.fph")); }
        [TestMethod] public void I巻課題2403() { Assert.AreEqual(0, Test課題の実施("Ik24-03.fph")); }
        [TestMethod] public void I巻課題2404() { Assert.AreEqual(0, Test課題の実施("Ik24-04.fph")); }
        [TestMethod] public void I巻課題2405() { Assert.AreEqual(0, Test課題の実施("Ik24-05.fph")); }
        [TestMethod] public void I巻課題2406() { Assert.AreEqual(0, Test課題の実施("Ik24-06.fph")); }
        [TestMethod] public void I巻課題240602() { Assert.AreEqual(0, Test課題の実施("Ik24-06-2.fph")); }
        [TestMethod] public void I巻課題2407() { Assert.AreEqual(0, Test課題の実施("Ik24-07.fph")); }
        [TestMethod] public void I巻課題240702() { Assert.AreEqual(0, Test課題の実施("Ik24-07-2.fph")); }
        [TestMethod] public void I巻課題2408() { Assert.AreEqual(0, Test課題の実施("Ik24-08.fph")); }
        [TestMethod] public void I巻課題2409() { Assert.AreEqual(0, Test課題の実施("Ik24-09.fph")); }
        [TestMethod] public void I巻課題2410() { Assert.AreEqual(0, Test課題の実施("Ik24-10.fph")); }
        [TestMethod] public void I巻課題2411() { Assert.AreEqual(0, Test課題の実施("Ik24-11.fph")); }
        [TestMethod] public void I巻課題2412() { Assert.AreEqual(0, Test課題の実施("Ik24-12.fph")); }
        #endregion

        #region I巻 課題28
        [TestMethod] public void I巻課題2801() { Assert.AreEqual(0, Test課題の実施("Ik28_01.fph")); }
        [TestMethod] public void I巻課題2802() { Assert.AreEqual(0, Test課題の実施("Ik28_02.fph")); }
        [TestMethod] public void I巻課題2803() { Assert.AreEqual(0, Test課題の実施("Ik28_03.fph")); }
        [TestMethod] public void I巻課題2804() { Assert.AreEqual(0, Test課題の実施("Ik28_04.fph")); }
        [TestMethod] public void I巻課題2805() { Assert.AreEqual(0, Test課題の実施("Ik28_05.fph")); }
        [TestMethod] public void I巻課題2806() { Assert.AreEqual(0, Test課題の実施("Ik28_06.fph")); }
        [TestMethod] public void I巻課題2807() { Assert.AreEqual(0, Test課題の実施("Ik28_07.fph")); }
        [TestMethod] public void I巻課題2808() { Assert.AreEqual(0, Test課題の実施("Ik28_08.fph")); }
        [TestMethod] public void I巻課題2809() { Assert.AreEqual(0, Test課題の実施("Ik28_09.fph")); }
        [TestMethod] public void I巻課題2810() { Assert.AreEqual(0, Test課題の実施("Ik28_10.fph")); }
        [TestMethod] public void I巻課題2811() { Assert.AreEqual(0, Test課題の実施("Ik28_11.fph")); }
        [TestMethod] public void I巻課題2812() { Assert.AreEqual(0, Test課題の実施("Ik28_12.fph")); }
        #endregion

        #region I巻 課題30
        [TestMethod] public void I巻課題3001() { Assert.AreEqual(0, Test課題の実施("Ik30_01.fph")); }
        [TestMethod] public void I巻課題3002() { Assert.AreEqual(0, Test課題の実施("Ik30_02.fph")); }
        [TestMethod] public void I巻課題3003() { Assert.AreEqual(0, Test課題の実施("Ik30_03.fph")); }
        [TestMethod] public void I巻課題3004() { Assert.AreEqual(0, Test課題の実施("Ik30_04.fph")); }
        [TestMethod] public void I巻課題3005() { Assert.AreEqual(0, Test課題の実施("Ik30_05.fph")); }
        [TestMethod] public void I巻課題3006() { Assert.AreEqual(0, Test課題の実施("Ik30_06.fph")); }
        #endregion

        #region I巻 課題34
        [TestMethod] public void I巻課題3401() { Assert.AreEqual(0, Test課題の実施("Ik34_01.fph")); }
        [TestMethod] public void I巻課題3402() { Assert.AreEqual(0, Test課題の実施("Ik34_02.fph")); }
        [TestMethod] public void I巻課題3403() { Assert.AreEqual(0, Test課題の実施("Ik34_03.fph")); }
        [TestMethod] public void I巻課題3404() { Assert.AreEqual(0, Test課題の実施("Ik34_04.fph")); }
        [TestMethod] public void I巻課題3405() { Assert.AreEqual(0, Test課題の実施("Ik34_05.fph")); }
        [TestMethod] public void I巻課題3406() { Assert.AreEqual(0, Test課題の実施("Ik34_06.fph")); }
        #endregion

        #region I巻 課題40
        [TestMethod] public void I巻課題4001() { Assert.AreEqual(0, Test課題の実施("Ik40_01.fph")); }
        [TestMethod] public void I巻課題4002() { Assert.AreEqual(0, Test課題の実施("Ik40_02.fph")); }
        [TestMethod] public void I巻課題4003() { Assert.AreEqual(0, Test課題の実施("Ik40_03.fph")); }
        [TestMethod] public void I巻課題4004() { Assert.AreEqual(1, Test課題の実施("Ik40_04.fph")); }
        [TestMethod] public void I巻課題4005() { Assert.AreEqual(0, Test課題の実施("Ik40_05.fph")); }
        [TestMethod] public void I巻課題4006() { Assert.AreEqual(0, Test課題の実施("Ik40_06.fph")); }
        [TestMethod] public void I巻課題4007() { Assert.AreEqual(0, Test課題の実施("Ik40_07.fph")); }
        [TestMethod] public void I巻課題4008() { Assert.AreEqual(0, Test課題の実施("Ik40_08.fph")); }
        [TestMethod] public void I巻課題4009() { Assert.AreEqual(0, Test課題の実施("Ik40_09.fph")); }
        [TestMethod] public void I巻課題4010() { Assert.AreEqual(0, Test課題の実施("Ik40_10.fph")); }
        [TestMethod] public void I巻課題4011() { Assert.AreEqual(0, Test課題の実施("Ik40_11.fph")); }
        [TestMethod] public void I巻課題4012() { Assert.AreEqual(0, Test課題の実施("Ik40_12.fph")); }
        #endregion

        #region I巻 課題43
        [TestMethod] public void I巻課題4301() { Assert.AreEqual(0, Test課題の実施("Ik43_01.fph")); }
        [TestMethod] public void I巻課題4302() { Assert.AreEqual(0, Test課題の実施("Ik43_02.fph")); }
        [TestMethod] public void I巻課題4302_2() { Assert.AreEqual(0, Test課題の実施("Ik43_02_2.fph")); }
        [TestMethod] public void I巻課題4303() { Assert.AreEqual(0, Test課題の実施("Ik43_03.fph")); }
        [TestMethod] public void I巻課題4303_2() { Assert.AreEqual(0, Test課題の実施("Ik43_03_2.fph")); }
        [TestMethod] public void I巻課題4304() { Assert.AreEqual(0, Test課題の実施("Ik43_04.fph")); }
        [TestMethod] public void I巻課題4304_2() { Assert.AreEqual(0, Test課題の実施("Ik43_04_2.fph")); }
        [TestMethod] public void I巻課題4305() { Assert.AreEqual(0, Test課題の実施("Ik43_05.fph")); }
        [TestMethod] public void I巻課題4305_2() { Assert.AreEqual(0, Test課題の実施("Ik43_05_2.fph")); }
        [TestMethod] public void I巻課題4306() { Assert.AreEqual(1, Test課題の実施("Ik43_06.fph")); }
        [TestMethod] public void I巻課題4307() { Assert.AreEqual(0, Test課題の実施("Ik43_07.fph")); }
        [TestMethod] public void I巻課題4308() { Assert.AreEqual(0, Test課題の実施("Ik43_08.fph")); }
        [TestMethod] public void I巻課題4309() { Assert.AreEqual(0, Test課題の実施("Ik43_09.fph")); }
        [TestMethod] public void I巻課題4309_2() { Assert.AreEqual(0, Test課題の実施("Ik43_09_2.fph")); }
        [TestMethod] public void I巻課題4310() { Assert.AreEqual(0, Test課題の実施("Ik43_10.fph")); }
        [TestMethod] public void I巻課題4310_2() { Assert.AreEqual(0, Test課題の実施("Ik43_10_2.fph")); }
        [TestMethod] public void I巻課題4311() { Assert.AreEqual(0, Test課題の実施("Ik43_11.fph")); }
        [TestMethod] public void I巻課題4311_2() { Assert.AreEqual(0, Test課題の実施("Ik43_11_2.fph")); }
        [TestMethod] public void I巻課題4312() { Assert.AreEqual(0, Test課題の実施("Ik43_12.fph")); }
        #endregion

        #region I巻 課題44
        [TestMethod] public void I巻課題4401() { Assert.AreEqual(0, Test課題の実施("Ik44_01.fph")); }
        [TestMethod] public void I巻課題4402() { Assert.AreEqual(0, Test課題の実施("Ik44_02.fph")); }
        [TestMethod] public void I巻課題4403() { Assert.AreEqual(0, Test課題の実施("Ik44_03.fph")); }
        [TestMethod] public void I巻課題4404() { Assert.AreEqual(0, Test課題の実施("Ik44_04.fph")); }
        [TestMethod] public void I巻課題4405() { Assert.AreEqual(0, Test課題の実施("Ik44_05.fph")); }
        [TestMethod] public void I巻課題4406() { Assert.AreEqual(0, Test課題の実施("Ik44_06.fph")); }
        [TestMethod] public void I巻課題4407() { Assert.AreEqual(0, Test課題の実施("Ik44_07.fph")); }
        [TestMethod] public void I巻課題4408() { Assert.AreEqual(0, Test課題の実施("Ik44_08.fph")); }
        #endregion

        #region I巻 補充課題1
        [TestMethod] public void I巻補充課題0101() { Assert.AreEqual(0, Test課題の実施("Ih01_01.fph")); }
        [TestMethod] public void I巻補充課題0102() { Assert.AreEqual(0, Test課題の実施("Ih01_02.fph")); }
        [TestMethod] public void I巻補充課題0103() { Assert.AreEqual(0, Test課題の実施("Ih01_03.fph")); }
        [TestMethod] public void I巻補充課題0104() { Assert.AreEqual(0, Test課題の実施("Ih01_04.fph")); }
        [TestMethod] public void I巻補充課題0105() { Assert.AreEqual(0, Test課題の実施("Ih01_05.fph")); }
        [TestMethod] public void I巻補充課題0106() { Assert.AreEqual(0, Test課題の実施("Ih01_06.fph")); }
        [TestMethod] public void I巻補充課題0107() { Assert.AreEqual(0, Test課題の実施("Ih01_07.fph")); }
        [TestMethod] public void I巻補充課題0108() { Assert.AreEqual(0, Test課題の実施("Ih01_08.fph")); }
        [TestMethod] public void I巻補充課題0109() { Assert.AreEqual(0, Test課題の実施("Ih01_09.fph")); }
        [TestMethod] public void I巻補充課題0110() { Assert.AreEqual(0, Test課題の実施("Ih01_10.fph")); }
        #endregion

        #region I巻 補充課題2
        [TestMethod] public void I巻補充課題0201() { Assert.AreEqual(0, Test課題の実施("Ih02_01.fph")); }
        [TestMethod] public void I巻補充課題0202() { Assert.AreEqual(0, Test課題の実施("Ih02_02.fph")); }
        [TestMethod] public void I巻補充課題0203() { Assert.AreEqual(0, Test課題の実施("Ih02_03.fph")); }
        [TestMethod] public void I巻補充課題0204() { Assert.AreEqual(0, Test課題の実施("Ih02_04.fph")); }
        [TestMethod] public void I巻補充課題0205() { Assert.AreEqual(0, Test課題の実施("Ih02_05.fph")); }
        [TestMethod] public void I巻補充課題0206() { Assert.AreEqual(0, Test課題の実施("Ih02_06.fph")); }
        [TestMethod] public void I巻補充課題0207() { Assert.AreEqual(0, Test課題の実施("Ih02_07.fph")); }
        [TestMethod] public void I巻補充課題0208() { Assert.AreEqual(0, Test課題の実施("Ih02_08.fph")); }
        [TestMethod] public void I巻補充課題0209() { Assert.AreEqual(0, Test課題の実施("Ih02_09.fph")); }
        [TestMethod] public void I巻補充課題0210() { Assert.AreEqual(1, Test課題の実施("Ih02_10.fph")); }
        #endregion

        #region I巻 補充課題3
        [TestMethod] public void I巻補充課題0301() { Assert.AreEqual(0, Test課題の実施("Ih03_01.fph")); }
        [TestMethod] public void I巻補充課題0302() { Assert.AreEqual(0, Test課題の実施("Ih03_02.fph")); }
        [TestMethod] public void I巻補充課題0303() { Assert.AreEqual(0, Test課題の実施("Ih03_03.fph")); }
        [TestMethod] public void I巻補充課題0304() { Assert.AreEqual(0, Test課題の実施("Ih03_04.fph")); }
        [TestMethod] public void I巻補充課題0305() { Assert.AreEqual(0, Test課題の実施("Ih03_05.fph")); }
        [TestMethod] public void I巻補充課題0306() { Assert.AreEqual(0, Test課題の実施("Ih03_06.fph")); }
        [TestMethod] public void I巻補充課題0307() { Assert.AreEqual(0, Test課題の実施("Ih03_07.fph")); }
        [TestMethod] public void I巻補充課題0308() { Assert.AreEqual(0, Test課題の実施("Ih03_08.fph")); }
        [TestMethod] public void I巻補充課題0309() { Assert.AreEqual(0, Test課題の実施("Ih03_09.fph")); }
        [TestMethod] public void I巻補充課題0310() { Assert.AreEqual(0, Test課題の実施("Ih03_10.fph")); }
        #endregion

        #region I巻 補充課題4
        [TestMethod] public void I巻補充課題0401() { Assert.AreEqual(0, Test課題の実施("Ih04_01.fph")); }
        [TestMethod] public void I巻補充課題0402() { Assert.AreEqual(0, Test課題の実施("Ih04_02.fph")); }
        [TestMethod] public void I巻補充課題0403() { Assert.AreEqual(0, Test課題の実施("Ih04_03.fph")); }
        [TestMethod] public void I巻補充課題0404() { Assert.AreEqual(0, Test課題の実施("Ih04_04.fph")); }
        [TestMethod] public void I巻補充課題0405() { Assert.AreEqual(0, Test課題の実施("Ih04_05.fph")); }
        [TestMethod] public void I巻補充課題0406() { Assert.AreEqual(0, Test課題の実施("Ih04_06.fph")); }
        [TestMethod] public void I巻補充課題0407() { Assert.AreEqual(0, Test課題の実施("Ih04_07.fph")); }
        [TestMethod] public void I巻補充課題0408() { Assert.AreEqual(0, Test課題の実施("Ih04_08.fph")); }
        [TestMethod] public void I巻補充課題0409() { Assert.AreEqual(0, Test課題の実施("Ih04_09.fph")); }
        [TestMethod] public void I巻補充課題0410() { Assert.AreEqual(0, Test課題の実施("Ih04_10.fph")); }
        #endregion

        #region I巻 補充課題5
        [TestMethod] public void I巻補充課題0501() { Assert.AreEqual(0, Test課題の実施("Ih05_01.fph")); }
        [TestMethod] public void I巻補充課題0502() { Assert.AreEqual(0, Test課題の実施("Ih05_02.fph")); }
        [TestMethod] public void I巻補充課題0503() { Assert.AreEqual(0, Test課題の実施("Ih05_03.fph")); }
        [TestMethod] public void I巻補充課題0504() { Assert.AreEqual(0, Test課題の実施("Ih05_04.fph")); }
        [TestMethod] public void I巻補充課題0505() { Assert.AreEqual(0, Test課題の実施("Ih05_05.fph")); }
        [TestMethod] public void I巻補充課題0506() { Assert.AreEqual(0, Test課題の実施("Ih05_06.fph")); }
        [TestMethod] public void I巻補充課題0507() { Assert.AreEqual(0, Test課題の実施("Ih05_07.fph")); }
        [TestMethod] public void I巻補充課題0508() { Assert.AreEqual(0, Test課題の実施("Ih05_08.fph")); }
        [TestMethod] public void I巻補充課題0509() { Assert.AreEqual(0, Test課題の実施("Ih05_09.fph")); }
        [TestMethod] public void I巻補充課題0510() { Assert.AreEqual(0, Test課題の実施("Ih05_10.fph")); }
        #endregion

        #region I巻 補充課題6
        [TestMethod] public void I巻補充課題0601() { Assert.AreEqual(0, Test課題の実施("Ih06_01.fph")); }
        [TestMethod] public void I巻補充課題0602() { Assert.AreEqual(0, Test課題の実施("Ih06_02.fph")); }
        [TestMethod] public void I巻補充課題0603() { Assert.AreEqual(0, Test課題の実施("Ih06_03.fph")); }
        [TestMethod] public void I巻補充課題0604() { Assert.AreEqual(0, Test課題の実施("Ih06_04.fph")); }
        [TestMethod] public void I巻補充課題0605() { Assert.AreEqual(0, Test課題の実施("Ih06_05.fph")); }
        [TestMethod] public void I巻補充課題0606() { Assert.AreEqual(0, Test課題の実施("Ih06_06.fph")); }
        #endregion

        #region I巻 補充課題7
        [TestMethod] public void I巻補充課題0701() { Assert.AreEqual(0, Test課題の実施("Ih07_01.fph")); }
        [TestMethod] public void I巻補充課題0702() { Assert.AreEqual(0, Test課題の実施("Ih07_02.fph")); }
        [TestMethod] public void I巻補充課題0703() { Assert.AreEqual(0, Test課題の実施("Ih07_03.fph")); }
        [TestMethod] public void I巻補充課題0704() { Assert.AreEqual(0, Test課題の実施("Ih07_04.fph")); }
        [TestMethod] public void I巻補充課題0705() { Assert.AreEqual(0, Test課題の実施("Ih07_05.fph")); }
        [TestMethod] public void I巻補充課題0706() { Assert.AreEqual(0, Test課題の実施("Ih07_06.fph")); }
        [TestMethod] public void I巻補充課題0707() { Assert.AreEqual(0, Test課題の実施("Ih07_07.fph")); }
        [TestMethod] public void I巻補充課題0708() { Assert.AreEqual(1, Test課題の実施("Ih07_08.fph")); }
        [TestMethod] public void I巻補充課題0709() { Assert.AreEqual(0, Test課題の実施("Ih07_09.fph")); }
        [TestMethod] public void I巻補充課題0710() { Assert.AreEqual(0, Test課題の実施("Ih07_10.fph")); }
        #endregion

        #region I巻 補充課題8
        [TestMethod] public void I巻補充課題0801() { Assert.AreEqual(0, Test課題の実施("Ih08_01.fph")); }
        [TestMethod] public void I巻補充課題0802() { Assert.AreEqual(0, Test課題の実施("Ih08_02.fph")); }
        [TestMethod] public void I巻補充課題0803() { Assert.AreEqual(0, Test課題の実施("Ih08_03.fph")); }
        [TestMethod] public void I巻補充課題0804() { Assert.AreEqual(0, Test課題の実施("Ih08_04.fph")); }
        [TestMethod] public void I巻補充課題0805() { Assert.AreEqual(1, Test課題の実施("Ih08_05.fph")); }
        [TestMethod] public void I巻補充課題0806() { Assert.AreEqual(0, Test課題の実施("Ih08_06.fph")); }
        [TestMethod] public void I巻補充課題0807() { Assert.AreEqual(0, Test課題の実施("Ih08_07.fph")); }
        [TestMethod] public void I巻補充課題0808() { Assert.AreEqual(1, Test課題の実施("Ih08_08.fph")); }
        [TestMethod] public void I巻補充課題0809() { Assert.AreEqual(0, Test課題の実施("Ih08_09.fph")); }
        [TestMethod] public void I巻補充課題0810() { Assert.AreEqual(0, Test課題の実施("Ih08_10.fph")); }
        #endregion

        #region I巻 補充課題9
        [TestMethod] public void I巻補充課題09_01() { Assert.AreEqual(0, Test課題の実施("Ih09_01.fph")); }
        [TestMethod] public void I巻補充課題09_02() { Assert.AreEqual(0, Test課題の実施("Ih09_02.fph")); }
        [TestMethod] public void I巻補充課題09_03() { Assert.AreEqual(0, Test課題の実施("Ih09_03.fph")); }
        [TestMethod] public void I巻補充課題09_04() { Assert.AreEqual(0, Test課題の実施("Ih09_04.fph")); }
        [TestMethod] public void I巻補充課題09_05() { Assert.AreEqual(1, Test課題の実施("Ih09_05.fph")); }
        [TestMethod] public void I巻補充課題09_06() { Assert.AreEqual(0, Test課題の実施("Ih09_06.fph")); }
        [TestMethod] public void I巻補充課題09_07() { Assert.AreEqual(0, Test課題の実施("Ih09_07.fph")); }
        [TestMethod] public void I巻補充課題09_08() { Assert.AreEqual(0, Test課題の実施("Ih09_08.fph")); }
        [TestMethod] public void I巻補充課題09_09() { Assert.AreEqual(0, Test課題の実施("Ih09_09.fph")); }
        [TestMethod] public void I巻補充課題09_10() { Assert.AreEqual(1, Test課題の実施("Ih09_10.fph")); }
        #endregion

        #region I巻p28 並達8度並達5度ソプラノ順次進行

        [TestMethod] public void Ip28_a() { Assert.AreEqual(0, Test断片的連結("Ip28_a.fph")); }
        [TestMethod] public void Ip28_b() { Assert.AreEqual(0, Test断片的連結("Ip28_b.fph")); }
        #endregion

        #region I巻p29 良の場合4種
        /* これは駄目な例だと思う。
        [TestMethod] public void Ip29_a() { Assert.AreEqual(0, ReadAndCheckAllProgressionsAreGood("Ip29_a.fph")); }
        */
        [TestMethod] public void Ip29_b() { Assert.AreEqual(0, Test断片的連結("Ip29_b.fph")); }
        [TestMethod] public void Ip29_c() { Assert.AreEqual(0, Test断片的連結("Ip29_c.fph")); }
        [TestMethod] public void Ip29_d() { Assert.AreEqual(0, Test断片的連結("Ip29_d.fph")); }
        #endregion

        #region I巻p30,16
        [TestMethod] public void Ip30_1() { Assert.AreEqual(0, Test断片的連結("Ip30_1.fph")); }
        [TestMethod] public void Ip30_2() { Assert.AreEqual(0, Test断片的連結("Ip30_2.fph")); }
        #endregion

        #region I巻p31,16 例題1
        [TestMethod] public void Ip31_1() { Assert.AreEqual(0, Test断片的連結("Ip31_1.fph")); }
        #endregion

        #region I巻p33,16 例題2
        [TestMethod] public void Ip33_1() { Assert.AreEqual(0, Test断片的連結("Ip33_1.fph")); }
        #endregion

        #region I巻p34,17
        [TestMethod] public void Ip34_1() { Assert.AreEqual(0, Test断片的連結("Ip34_1.fph")); }
        [TestMethod] public void Ip34_2() { Assert.AreEqual(0, Test断片的連結("Ip34_2.fph")); }
        #endregion

        #region I巻p51
        [TestMethod] public void Ip51_a() { Assert.AreEqual(0, Test断片的連結("Ip51_a.fph")); }
        [TestMethod] public void Ip51_b() { Assert.AreEqual(0, Test断片的連結("Ip51_b.fph")); }
        [TestMethod] public void Ip51_c() { Assert.AreEqual(0, Test断片的連結("Ip51_c.fph")); }
        [TestMethod] public void Ip51_d() { Assert.AreEqual(0, Test断片的連結("Ip51_d.fph")); }
        #endregion

        #region I巻p54,31 [1転]II→V
        [TestMethod] public void Ip54_31_1() { Assert.AreEqual(0, Test断片的連結("Ip54_31_1.fph")); }
        [TestMethod] public void Ip54_31_2() { Assert.AreEqual(0, Test断片的連結("Ip54_31_2.fph")); }
        #endregion

        #region I巻p61,35
        [TestMethod] public void Ip61_35_a1() { Assert.AreEqual(0, Test断片的連結("Ip61_35a1.fph")); }
        [TestMethod] public void Ip61_35_a2() { Assert.AreEqual(0, Test断片的連結("Ip61_35a2.fph")); }
        [TestMethod] public void Ip61_35_b() { Assert.AreEqual(0, Test断片的連結("Ip61_35b.fph")); }
        [TestMethod] public void Ip61_35_c() { Assert.AreEqual(0, Test断片的連結("Ip61_35c.fph")); }
        #endregion

        #region I巻p64,37
        [TestMethod] public void Ip64_37_b() { Assert.AreEqual(0, Test断片的連結("Ip64_37_b.fph")); }
        [TestMethod] public void Ip64_37_1() { Assert.AreEqual(0, Test断片的連結("Ip64_37_1.fph")); }
        [TestMethod] public void Ip64_37_2() { Assert.AreEqual(0, Test断片的連結("Ip64_37_2.fph")); }
        [TestMethod] public void Ip64_37_3() { Assert.AreEqual(0, Test断片的連結("Ip64_37_3.fph")); }
        #endregion

        #region I巻p65,38 例題

        [TestMethod] public void Ip65_38() { Assert.AreEqual(0, Test課題の実施("Ip65_38.fph")); }
        #endregion

        #region I巻p73,43 V7の和音→Iの和音
        [TestMethod] public void Ip73_1() { Assert.AreEqual(0, Test断片的連結("Ip73_1.fph")); }
        [TestMethod] public void Ip73_2() { Assert.AreEqual(0, Test断片的連結("Ip73_2.fph")); }
        [TestMethod] public void Ip73_3() { Assert.AreEqual(0, Test断片的連結("Ip73_3.fph")); }
        #endregion

        #region I巻p74,44 □→V7の和音
        [TestMethod] public void Ip74_1() { Assert.AreEqual(0, Test断片的連結("Ip74_1.fph")); }
        [TestMethod] public void Ip74_2() { Assert.AreEqual(0, Test断片的連結("Ip74_2.fph")); }
        [TestMethod] public void Ip74_3() { Assert.AreEqual(0, Test断片的連結("Ip74_3.fph")); }
        [TestMethod] public void Ip74_4() { Assert.AreEqual(0, Test断片的連結("Ip74_4.fph")); }
        [TestMethod] public void Ip74_5() { Assert.AreEqual(0, Test断片的連結("Ip74_5.fph")); }
        [TestMethod] public void Ip74_6() { Assert.AreEqual(0, Test断片的連結("Ip74_6.fph")); }
        [TestMethod] public void Ip74_7() { Assert.AreEqual(0, Test断片的連結("Ip74_7.fph")); }
        [TestMethod] public void Ip74_8() { Assert.AreEqual(0, Test断片的連結("Ip74_8.fph")); }
        #endregion

        #region I巻p102,64 例題

        [TestMethod] public void Ip102_64_A() { Assert.AreEqual(0, Test課題の実施("Ip102_64_実施A.fph")); }
        [TestMethod] public void Ip102_64_B() { Assert.AreEqual(0, Test課題の実施("Ip102_64_実施B.fph")); }
        [TestMethod] public void Ip103_64_A() { Assert.AreEqual(0, Test課題の実施("Ip103_64_実施A.fph")); }
        [TestMethod] public void Ip103_64_B() { Assert.AreEqual(0, Test課題の実施("Ip103_64_実施B.fph")); }
        #endregion

        #region I巻p109,5
        [TestMethod] public void Ip109_5_a() { Assert.AreEqual(0, Test断片的連結("Ip109_5_a.fph")); }
        [TestMethod] public void Ip109_5_b() { Assert.AreEqual(0, Test断片的連結("Ip109_5_b.fph")); }
        [TestMethod] public void Ip109_5_c() { Assert.AreEqual(0, Test断片的連結("Ip109_5_c.fph")); }
        #endregion

        #region I巻p123 2 A
        [TestMethod] public void Ip123_2A_01() { Assert.AreEqual(0, Test断片的連結("Ip123_2A_01.fph")); }
        [TestMethod] public void Ip123_2A_02() { Assert.AreEqual(0, Test断片的連結("Ip123_2A_02.fph")); }
        [TestMethod] public void Ip123_2A_03() { Assert.AreEqual(0, Test断片的連結("Ip123_2A_03.fph")); }
        [TestMethod] public void Ip123_2A_04() { Assert.AreEqual(0, Test断片的連結("Ip123_2A_04.fph")); }
        [TestMethod] public void Ip123_2A_05() { Assert.AreEqual(0, Test断片的連結("Ip123_2A_05.fph")); }
        #endregion

        #region I巻p123 2 B
        [TestMethod] public void Ip123_2B_01() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_01.fph")); }
        [TestMethod] public void Ip123_2B_02() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_02.fph")); }
        [TestMethod] public void Ip123_2B_03() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_03.fph")); }
        [TestMethod] public void Ip123_2B_04() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_04.fph")); }
        [TestMethod] public void Ip123_2B_05() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_05.fph")); }
        [TestMethod] public void Ip123_2B_06() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_06.fph")); }
        [TestMethod] public void Ip123_2B_07() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_07.fph")); }
        [TestMethod] public void Ip123_2B_08() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_08.fph")); }
        [TestMethod] public void Ip123_2B_09() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_09.fph")); }
        [TestMethod] public void Ip123_2B_10() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_10.fph")); }
        [TestMethod] public void Ip123_2B_11() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_11.fph")); }
        [TestMethod] public void Ip123_2B_12() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_12.fph")); }
        [TestMethod] public void Ip123_2B_13() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_13.fph")); }
        [TestMethod] public void Ip123_2B_14() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_14.fph")); }
        [TestMethod] public void Ip123_2B_15() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_15.fph")); }
        [TestMethod] public void Ip123_2B_16() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_16.fph")); }
        [TestMethod] public void Ip123_2B_17() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_17.fph")); }
        [TestMethod] public void Ip123_2B_18() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_18.fph")); }
        [TestMethod] public void Ip123_2B_19() { Assert.AreEqual(0, Test断片的連結("Ip123_2B_19.fph")); }
        #endregion

        #region I巻p124 2 C
        [TestMethod] public void Ip123_2C_01() { Assert.AreEqual(0, Test断片的連結("Ip123_2C_01.fph")); }
        [TestMethod] public void Ip123_2C_02() { Assert.AreEqual(0, Test断片的連結("Ip123_2C_02.fph")); }
        [TestMethod] public void Ip123_2C_03() { Assert.AreEqual(0, Test断片的連結("Ip123_2C_03.fph")); }
        [TestMethod] public void Ip123_2C_04() { Assert.AreEqual(0, Test断片的連結("Ip123_2C_04.fph")); }
        [TestMethod] public void Ip123_2C_05() { Assert.AreEqual(0, Test断片的連結("Ip123_2C_05.fph")); }
        [TestMethod] public void Ip123_2C_06() { Assert.AreEqual(0, Test断片的連結("Ip123_2C_06.fph")); }
        [TestMethod] public void Ip123_2C_07() { Assert.AreEqual(0, Test断片的連結("Ip123_2C_07.fph")); }
        [TestMethod] public void Ip123_2C_08() { Assert.AreEqual(0, Test断片的連結("Ip123_2C_08.fph")); }
        [TestMethod] public void Ip123_2C_09() { Assert.AreEqual(0, Test断片的連結("Ip123_2C_09.fph")); }
        [TestMethod] public void Ip123_2C_10() { Assert.AreEqual(0, Test断片的連結("Ip123_2C_10.fph")); }
        #endregion

        #region I巻p124 2 D
        [TestMethod] public void Ip124_2D_01() { Assert.AreEqual(0, Test断片的連結("Ip124_2D_1.fph")); }
        [TestMethod] public void Ip124_2D_02() { Assert.AreEqual(0, Test断片的連結("Ip124_2D_2.fph")); }
        #endregion

        #region I巻p124 2 E
        [TestMethod] public void Ip124_2E_01() { Assert.AreEqual(0, Test断片的連結("Ip124_2E_1.fph")); }
        [TestMethod] public void Ip124_2E_02() { Assert.AreEqual(0, Test断片的連結("Ip124_2E_2.fph")); }
        #endregion

        #region I巻p125 2 F
        [TestMethod] public void Ip125_2F_01() { Assert.AreEqual(0, Test断片的連結("Ip125_2F_1.fph")); }
        [TestMethod] public void Ip125_2F_02() { Assert.AreEqual(0, Test断片的連結("Ip125_2F_2.fph")); }
        [TestMethod] public void Ip125_2F_03() { Assert.AreEqual(0, Test断片的連結("Ip125_2F_3.fph")); }
        [TestMethod] public void Ip125_2F_04() { Assert.AreEqual(0, Test断片的連結("Ip125_2F_4.fph")); }
        [TestMethod] public void Ip125_2F_05() { Assert.AreEqual(0, Test断片的連結("Ip125_2F_5.fph")); }
        #endregion

        #region I巻p125 2 G
        [TestMethod] public void Ip125_2G_01() { Assert.AreEqual(0, Test断片的連結("Ip125_2G_1.fph")); }
        [TestMethod] public void Ip125_2G_02() { Assert.AreEqual(0, Test断片的連結("Ip125_2G_2.fph")); }
        [TestMethod] public void Ip125_2G_03() { Assert.AreEqual(0, Test断片的連結("Ip125_2G_3.fph")); }
        [TestMethod] public void Ip125_2G_04() { Assert.AreEqual(0, Test断片的連結("Ip125_2G_4.fph")); }
        #endregion

        #region I巻p126 2 H
        [TestMethod] public void Ip126_2H_01() { Assert.AreEqual(0, Test断片的連結("Ip126_2H_1.fph")); }
        [TestMethod] public void Ip126_2H_02() { Assert.AreEqual(0, Test断片的連結("Ip126_2H_2.fph")); }
        [TestMethod] public void Ip126_2H_03() { Assert.AreEqual(1, Test断片的連結("Ip126_2H_3wrong.fph")); }
        [TestMethod] public void Ip126_2H_04() { Assert.AreEqual(1, Test断片的連結("Ip126_2H_4wrong.fph")); }
        #endregion

        #region I巻p126 2 I
        [TestMethod] public void Ip126_2I_01() { Assert.AreEqual(0, Test断片的連結("Ip126_2I_1.fph")); }
        [TestMethod] public void Ip126_2I_02() { Assert.AreEqual(0, Test断片的連結("Ip126_2I_2.fph")); }
        [TestMethod] public void Ip126_2I_03() { Assert.AreEqual(0, Test断片的連結("Ip126_2I_3.fph")); }
        [TestMethod] public void Ip126_2I_04() { Assert.AreEqual(0, Test断片的連結("Ip126_2I_4.fph")); }
        [TestMethod] public void Ip126_2I_05() { Assert.AreEqual(1, Test断片的連結("Ip126_2I_5wrong.fph")); }
        #endregion

        #region I巻p126 3
        [TestMethod] public void Ip126_3_01() { Assert.AreEqual(0, Test断片的連結("Ip126_3_01.fph")); }
        [TestMethod] public void Ip126_3_02() { Assert.AreEqual(0, Test断片的連結("Ip126_3_02.fph")); }
        [TestMethod] public void Ip126_3_03() { Assert.AreEqual(0, Test断片的連結("Ip126_3_03.fph")); }
        [TestMethod] public void Ip126_3_04() { Assert.AreEqual(0, Test断片的連結("Ip126_3_04.fph")); }
        [TestMethod] public void Ip126_3_05() { Assert.AreEqual(0, Test断片的連結("Ip126_3_05.fph")); }
        [TestMethod] public void Ip126_3_06() { Assert.AreEqual(0, Test断片的連結("Ip126_3_06.fph")); }
        [TestMethod] public void Ip126_3_07() { Assert.AreEqual(0, Test断片的連結("Ip126_3_07.fph")); }
        [TestMethod] public void Ip126_3_08() { Assert.AreEqual(0, Test断片的連結("Ip126_3_08.fph")); }
        [TestMethod] public void Ip126_3_09() { Assert.AreEqual(0, Test断片的連結("Ip126_3_09.fph")); }
        [TestMethod] public void Ip126_3_10() { Assert.AreEqual(1, Test断片的連結("Ip126_3_10.fph")); }
        #endregion

        #region I巻p128 4
        [TestMethod] public void Ip128_4_1() { Assert.AreEqual(0, Test断片的連結("Ip128_4_1.fph")); }
        [TestMethod] public void Ip128_4_2() { Assert.AreEqual(0, Test断片的連結("Ip128_4_2.fph")); }
        [TestMethod] public void Ip128_4_3() { Assert.AreEqual(0, Test断片的連結("Ip128_4_3.fph")); }
        [TestMethod] public void Ip128_4_4() { Assert.AreEqual(0, Test断片的連結("Ip128_4_4.fph")); }
        [TestMethod] public void Ip128_4_5() { Assert.AreEqual(0, Test断片的連結("Ip128_4_5.fph")); }
        [TestMethod] public void Ip128_4_6() { Assert.AreEqual(0, Test断片的連結("Ip128_4_6.fph")); }
        #endregion

        #region I巻p129 5
        [TestMethod] public void Ip129_5_1() { Assert.AreEqual(0, Test断片的連結("Ip129_5_1.fph")); }
        [TestMethod] public void Ip129_5_2() { Assert.AreEqual(0, Test断片的連結("Ip129_5_2.fph")); }
        [TestMethod] public void Ip129_5_3() { Assert.AreEqual(0, Test断片的連結("Ip129_5_3.fph")); }
        [TestMethod] public void Ip129_5_4() { Assert.AreEqual(0, Test断片的連結("Ip129_5_4.fph")); }
        [TestMethod] public void Ip129_5_5_1() { Assert.AreEqual(0, Test断片的連結("Ip129_5_5_1.fph")); }
        /*
        [TestMethod] public void Ip129_5_5_2() { Assert.AreEqual(0, ReadAndCheckAllProgressionsAreGood("Ip129_5_5_2.fph")); }
        */
        [TestMethod] public void Ip129_5_6() { Assert.AreEqual(0, Test断片的連結("Ip129_5_6.fph")); }
        [TestMethod] public void Ip129_5_7() { Assert.AreEqual(0, Test断片的連結("Ip129_5_7.fph")); }
        #endregion

    }
}
